package com.kgc.basic.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Target(ElementType.FIELD)  //应用于属性（包括枚举中的常量）
@Retention(RetentionPolicy.RUNTIME) //由JVM 加载，包含在类文件中，在运行时可以被获取到
public @interface Validation {
    //是否必填
    boolean required() default false;

    //最小长度
    int minLength() default 0;

    //最大长度
    int maxLength() default Integer.MAX_VALUE;

    //正则表达式
    String regex() default "";

    //错误消息
    String message() default "";
}
